/**** archivo dados.cc ****/
#include "dados.h"
#include <cstdlib>
#include <ctime>

/*
  void lanzamiento()
  Devuelve: Nada
  Parámetros: Nada
  Descripcion: Obtiene valores aleatorios y los asigna a los dados.
*/

void Dados::lanzamiento(){
  dado1_ = rand();
  dado2_ = rand();
  dado1_ = (dado1_%6)+1;
  dado2_ = (dado2_%6)+1;
}

/*
  int getDado1()
  Devuelve: Entero
  Parámetros: Nada
  Descripcion: Devuelve el valor del dado 1.
*/

int Dados::getDado1(){
  return dado1_;
}

/*
  int getDado2()
  Devuelve: Entero
  Parámetros: Nada
  Descripcion: Devuelve el valor del dado 2.
*/

int Dados::getDado2(){
  return dado2_;
}

/*
  bool setDado1(int valor)
  Devuelve: Bool
  Parámetros: Entero(valor)
  Descripcion: Cambia el valor del dado1 por el valor introducido por parámetro.
               Devuelve true si se han insertado correctamente y false si el valor no esta permitido.
*/

bool Dados::setDado1(int valor){
  if(valor > 0 && valor < 7){
    dado1_ = valor;
    return true;
  }
  else{
    return false;
  }

}

/*
  bool setDado2(int valor)
  Devuelve: Bool
  Parámetros: Entero(valor)
  Descripcion: Cambia el valor del dado2 por el valor introducido por parámetro.
               Devuelve true si se han insertado correctamente y false si el valor no esta permitido.
*/

bool Dados::setDado2(int valor){
  if(valor > 0 && valor < 7){
    dado2_ = valor;
    return true;
  }
  else{
    return false;
  }
}

/*
  int getSuma()
  Devuelve: Entero
  Parámetros: Nada
  Descripcion: Devuelve la suma de los dos dados.
*/

int Dados::getSuma(){
  return getDado1()+getDado2();
}

/*
  Constructor Dados
  Parámetros: Entero (initdado1, initdado2)
  Descripcion: Inicializa las variables privadas con los parámetros introducidos.
*/

Dados::Dados(int initdado1, int initdado2){
  dado1_ = initdado1;
  dado2_  = initdado2;
}
